package com.flyme.module.base.provider.service;

import com.flyme.common.core.model.query.PagerInfo;
import com.flyme.core.base.supper.entity.EntityMap;
import com.flyme.core.base.supper.service.IBaseService;
import com.flyme.module.base.client.entity.SysUsercertificate;

import java.util.List;


public interface SysUsercertificateService extends IBaseService<SysUsercertificate> {

    List<SysUsercertificate> selectByUserId(Long userId);

    EntityMap getPeriodrecord(Long usercertificateId);

    List<EntityMap> getlistCert(Long userId, String type, PagerInfo pagerInfo);

    EntityMap getByIdCard(String idCard, String certificateCode);

    /**
     * 根据证书编号查询证书
     */
    SysUsercertificate getByNum(Long userId, String certificateNum);

    /**
     * 根据用户身份证及证书编号查询
     */
    Integer countByIdCard(String idCard, String certificateNum);

    /**
     * 根据用户身份证及证书编号查询
     */
    SysUsercertificate findByIdCard(String idCard, String certificateNum);

    List<EntityMap> getstudyConfig(Long userCeritifiId, PagerInfo pagerInfo);


    List<EntityMap> ifexists(Long CeritifiId);


    EntityMap getUsercertifie(Long usercertificateId);

    /**
     * 用户证书定时器（每年一月一日将证书是否满学时改为0）
     */
    void certificateJob();

}
